home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
icon
/
packages.lha
/
packages
/
atari
/
ats.arc
/
TESTS.ARC
/
PROTO.ICN
< prev
next >
Wrap
Text File
|
1990-03-28
|
2KB
|
157 lines
# This program contains samples of all the basic syntactic
# forms in Icon.
record three(x,y,z)
record zero()
record one(z)
global line, count
procedure main()
end
procedure expr1(a, b)
local x,y,z
static e1
initial e1 := 0
()
{}
();()
[]
[,]
x.y
x[i]
x[i:j]
x[i+:j]
x[i-:j]
(,,,)
x(,,,)
x!y
not x
|x
!x
*x
+x
-x
end
procedure expr2(a, b[])
.x
/x
=x
?x
\x
~x
@x
^x
x \ i
x @ y
i ^ j
i * j
i / j
i % j
c1 ** c2
i + j
i - j
c1 ++ c2
c1 -- c2
s1 || s2
a1 ||| a2
i < j
i <= j
i = j
i >= j
i > j
i ~= j
s1 << s2
s1 == s2
s1 >>= s2
s1 >> s2
s1 ~== s2
x === y
x ~=== y
x | y
i to j
i to j by k
x := y
x <- y
x :=: y
x <-> y
i +:= j
i -:= j
i *:= j
end
procedure expr3()
i /:= j
i %:= j
i ^:= j
i <:= j
i <=:= j
i =:= j
i >=:= j
i ~=:= j
c1 ++:= c2
c1 --:= c2
c1 **:= c2
s1 ||:= s2
s1 <<:= s2
s1 <<=:= s2
s1 ==:= s2
s1 >>=:= s2
s1 >>:= s2
s1 ~==:= s2
s1 ?:= s2
a1 |||:= a2
x ===:= y
x ~===:= y
x &:= y
x @:= y
s ? x
x & y
create x
return
return x
suspend x
suspend x do y
fail
end
procedure expr4()
while e1 do break
while e1 do break e2
while e1 do next
case e of {
x: fail
(i > j) | 1 : return
}
case size(s) of {
1: 1
default: fail
}
if e1 then e2
if e1 then e2 else e3
repeat e
while e1
while e1 do e2
until e1
until e1 do e2
every e1
every e1 do e2
x
X_
&cset
&null
"abc"
'abc'
"\n"
"^a"
"\001"
"\x01"
1
999999
36ra1
3.5
2.5e4
4e-10
end